import processing.core.*;


public class IceCube extends Esine {
	PImage tex;
	float a = (float)0.0;

	/**
	 * Jääkuution konstruktori
	 * @param parent
	 * @param pts on poikkileikkauksen segmenttien lukumäärä
	 */
	IceCube(PApplet parent, int pts){
		super(parent, pts);
		tex = pa.loadImage("textures/Jaapalakuvio.png");
	}

	public void piirra() 
	{
		//Kommentit vois pit ja huomioida, jos haluis jpalan liikkuvan
		//	    a += 0.005;
		//	  if(a > pa.TWO_PI) { 
		//	    a = (float)0.0; 
		//	  }
		pa.pushMatrix();
		pa.translate(0, 60, 0);
		super.piirra(); // kääntyillää
		pa.scale((float) 0.4); // pienentyy
//		pa.translate(0, 120);
		pa.noStroke();
		//	  pa.rotateX(a);
		//	  pa.rotateY(a*2);
		Kuutio(tex);
		super.poppi(); // revert kääntyillää
		pa.popMatrix();
	}

	//Piirretn kuutio kuviointeineen
	void Kuutio(PImage tex) {
		pa.beginShape(PConstants.QUADS);
		pa.texture(tex);

		pa.vertex(-120, -120,  120, 0, 0);
		pa.vertex( 120, -120,  120, 120, 0);
		pa.vertex( 120,  120,  120, 120, 120);
		pa.vertex(-120,  120,  120, 0, 120);

		pa.vertex( 120, -120, -120, 0, 0);
		pa.vertex(-120, -120, -120, 120, 0);
		pa.vertex(-120,  120, -120, 120, 120);
		pa.vertex( 120,  120, -120, 0, 120);

		pa.vertex(-120,  120,  120, 0, 0);
		pa.vertex( 120,  120,  120, 120, 0);
		pa.vertex( 120,  120, -120, 120, 120);
		pa.vertex(-120,  120, -120, 0, 120);

		pa.vertex(-120, -120, -120, 0, 0);
		pa.vertex( 120, -120, -120, 120, 0);
		pa.vertex( 120, -120,  120, 120, 120);
		pa.vertex(-120, -120,  120, 0, 120);

		pa.vertex( 120, -120,  120, 0, 0);
		pa.vertex( 120, -120, -120, 120, 0);
		pa.vertex( 120,  120, -120, 120, 120);
		pa.vertex( 120,  120,  120, 0, 120);

		pa.vertex(-120, -120, -120, 0, 0);
		pa.vertex(-120, -120,  120, 120, 0);
		pa.vertex(-120,  120,  120, 120, 120);
		pa.vertex(-120,  120, -120, 0, 120);

		pa.endShape();
	}
}